package cn.biplam.front.template.control.table.cell;

import cn.biplam.common.wrapper.ErrorMessage;
import cn.biplam.front.template.base.TextArea;

/**
 * 多行输入框单元格
 * @author XiaoRuxing 2009-5-5上午11:14:51
 * @version 1.0
 */
public class TextAreaCell extends Cell{

	private TextArea textArea;
	/** 单元格宽度 */
	private int cellWidth;
	/** 单元格高度 */
	private int cellHight;
	/**
	 * 构造方法
	 * @param sLable 标题
	 * @param sName  输入框名称
	 * @param content 内容
	 * @throws ErrorMessage
	 */
	public TextAreaCell(String sLable,String sName,String content,int tableWidth,int currentWidth) throws ErrorMessage{
		/** 内容宽度 */
		int lableWidth=sLable.getBytes().length;
		/** 列数 */
		int cols;
		/** 如果内容宽度大于表格宽度设置内容的宽度为表格宽度,
		 * 如果内容宽度小于表格宽度大于表格剩余宽度设置表格宽度为默认宽度,
		 * 如果内容宽度小于表格剩余宽度设置内容宽度为剩余宽度 */
		cols=tableWidth/7-lableWidth-3;
		this.textArea=new TextArea(sLable,sName,content,cols,-1);
		this.cellWidth=tableWidth;
		this.cellHight=textArea.getHeight();
	}

	/**
	 * 获取单元格占位宽度
	 * @return 返回单元格占位宽度
	 */
	public int _getLength(){
		return cellWidth;
	}

	/**
	 * 获取文本域占位高度
	 * @return 占位高度
	 */
	public int getHeight(){
		return this.cellHight;
	}

	public void getContent() throws ErrorMessage{
		put(textArea.get());
	}
}
